package io;

import java.io.*;
import java.nio.charset.StandardCharsets;

/**
 * java 将流按照读写单位划分为字节流与字符流
 * java.io.InputStream 和 OutputStream 是所有字节流的超类
 * java.io.Reader 和 Writer 是所有字符流的超类
 *
 * 字符流读写以字符（char）为最小单位进行。
 *
 * 转换流
 * java.io.InputStreamReader 和 OutputStreamWriter
 *
 *转换流是唯一可以连接在字节流上的字符流，在流连接中其他的字符流可以通过连接上转换流从而与下面的字节流串联及进行读写操作。
 *
 *
 */
public class OSWDemo {
    public static void main(String[] args) throws IOException {
        FileOutputStream fos = new FileOutputStream("osw.txt");
        // 创建转换流时通常要明确字符集（不指定会使用系统默认的，这可能导致跨平台问题）
        OutputStreamWriter osw = new OutputStreamWriter(fos, StandardCharsets.UTF_8);
        osw.write("你好，在吗?");
        osw.write("在呢，什么事?");
        System.out.println("写出完毕！");
        osw.close();



    }
}
